package org.dreamfly.core.dao;

import org.dreamfly.core.bean.SzModel;

import java.util.List;

public interface ModelDAO extends BaseDAO<SzModel,Long>{
    /**
     * 保存或更新模型对象
     * @param model 模型对象
     */
    void saveOrUpdate(SzModel model);
   
    /**
	 * 关键字搜索
	 * 
	 */
	List<SzModel> normalSearch(SzModel model, int firstRow, int maxRow);
	
	/**
	 * 根据typeIds查询指定模型的记录数（可指定多种类型）
	 *
     * @param typeIds
     * @param title
     * @param serverName
     * @return
	 */
	public Long findCount(List<Long> typeIds, String title, String serverName);
	
	/**
     * 按类型查找模型（可以多个类型）
     *
     * @param typeIds 模型类型ID （modelTypeId）
     * @param title 模型标题（可选项，即可以为 null 或 ""）
     * @param firstRow 起始位置
     * @param maxRow 最大记录数
     * @param serverName
     * @return
     */
	public List<SzModel> findByType(List<Long> typeIds, String title, int firstRow, int maxRow, String serverName);
	
    void saveInfo(SzModel model);
    void modifyInfo(SzModel model);
}
